package com.gitee.sop.notify.api;

import com.gitee.sop.notify.api.req.NotifyRequest;
import com.gitee.sop.notify.api.resp.NotifyInfoResponse;
import com.gitee.sop.notify.api.resp.NotifyResponse;

/**
 * 回调接口
 *
 * @author 六如
 */
public interface NotifyService {

    /**
     * 回调
     *
     * @param request 参数
     * @return 返回结果
     */
    NotifyResponse notify(NotifyRequest request);

    /**
     * 回调立即发送
     *
     * @param notifyId notifyId
     * @return 返回结果
     */
    NotifyResponse notifyImmediately(Long notifyId);

    /**
     * 根据通知id，查看详情
     *
     * @param notifyId 通知id
     * @return 返回详情，没有返回null
     */
    NotifyInfoResponse getByNotifyId(Long notifyId);
}
